犠牲的アーキテクチャ(Sacrificial Architecture)
public.icon
犠牲的アーキテクチャとは,チームが現在開発しているものが,数年後には破棄しなければならなくなる(そうなってほしい)という事実を,現時点で受け入れるという意味
Martin Fowler氏の語る“犠牲的アーキテクチャ"
Webサービスのシステム、作り直すかレガシーコードのままでいくか議論すると必ず紛糾して労力を遣うけど、まじで式年遷宮みたいに20年に一回作り直すのを前提にすると気が楽になるかもな。5年に一回リファクタリングを目的に作り直す前提にする
@naoya_ito April 27, 2014
Jeff Dean(Google)によるChallenges in Building Large-Scale Information Retrieval Systemsでは、「design for ~10X growth, but plan to rewrite before ~100X」と。
参考
犠牲的アーキテクチャ~リプレースを正当化するアーキテクチャ: プログラマの思索
犠牲的アーキテクチャ
/watarukura/式年遷宮アーキテクチャとマイクロサービスアーキテクチャ
定期的に作り直すことで、技術的負債を踏み倒せる
マイクロサービス化すると、一サービスのサイズが小さくなるので、影響範囲を小さくしながら作り直しができる
業務知識や、システム全体の知識を身につけるのは「一から作る」のが効率が良いのでは
前回構築した人がいるサイクルで再構築できれば、技術継承に役立つ
式年遷宮アーキテクチャ
式年遷宮